#include<iostream>

// void Swap(int &a, int &b)
// {
//     int c= a;
//     a= b;
//     b= c;
// }

int main()
{
    // int a=10;
    // int b=20;
    // Swap(&a,&b);

    //引用
    // int a=10;
    //引用定义时必须初始化
    //左值引用：引用只能绑定左值
    // int b=20;  //b是a的引用，不是取地址:间接访问内存，修改内存的方式
    //const &：常引用，左值引用不能绑定右值，所以使用常引用
    // const int &b=10;
    // Swap(a,b);
    // std::cout<<a<<" "<<b<<std::endl;

    int a=10;
    //引用在初始化绑定后不会再绑定为其他变量的引用
    int &b=a;
    int c=30;
    b=c;
    std::cout<<a<<b<<c;
    //引用的本质：指针常量
    return 0;
}